8 research outputs found

    Modularization Approaches in the Context of Monolithic Simulations

    Get PDF
    Qualitätsmerkmale eines Software-Systems wie Zuverlässigkeit oder Performanz können über dessen Erfolg oder Scheitern entscheiden. Diese Qualitätsmerkmale können im klassischen Software-Ingenieurswesen erst bestimmt werden, wenn der Entwurfsprozess bereits vollendet ist und Teile des Software-Systems implementiert sind. Computer-Simulationen erlauben es jedoch Schätzungen dieser Werte schon während des Software-Entwurfs zu bestimmen. Simulationen werden erstellt um bestimmte Aspekte eines Systems zu analysieren. Die Repräsentation des Systems ist auf diese Analyse spezialisiert. Diese Spezialisierung resultiert oft in einer monolithischen Struktur der Simulation. Solch eine Struktur kann jedoch die Wartbarkeit der Simulation negativ beeinflussen und das Verständnis und die Wiederverwendbarkeit der Repräsentation des Systems verschlechtern. Die Nachteile einer monolithischen Struktur können durch das Konzept der Modularisierung reduziert werden. In diesem Ansatz wird ein Problem in kleinere Teilprobleme zerlegt. Diese Zerlegung ermöglicht ein besseres Veständnis und eine bessere Handhabung der Teilprobleme. In dieser Arbeit wird ein Ansatz präsentiert, um die Kopplung von neu entwickelten oder bereits existierenden Simulationen zu einer modularen Simulation zu beschreiben. Dieser Ansatz besteht aus einer Domänenspezifischen Sprache (DSL), die mit modellgetriebenen Technologien entwickelt wird. Die DSL wird in einer Fallstudie angewendet, um die Kopplung von zwei Simulationen zu beschreiben. Weiterhin wird die Kopplung dieser Simulationen mit einem existierenden Kopplungsansatz gemäß der erzeugten Beschreibung manuell implementiert. In dieser Fallstudie wird die Vollständigkeit der Fähigkeit der DSL untersucht, die Kopplung von mehreren Simulation zu einer modularen Simulation zu beschreiben. Weiterhin wird die Genauigkeit des Modularisierungsansatzes bezüglich der Verhaltensbewahrung der modularen Simulation gegenüber der monolithischen Version evaluiert. Hierfür werden die Resultate der modularen Simulation mit denen der monolithischen Version verglichen. Zudem wird die Skalierbarkeit des Ansatzes durch die Betrachtung der Ausführungszeiten untersucht, wenn mehrere Simulationen gekoppelt werden. Außerdem wird der Effekt der Modularisierung auf die Ausführungszeit in Relation zur monolithischen Simulation betrachtet. Die erhaltenen Resultate zeigen, dass die Kopplung der beiden Simulationen der Fallstudie, mit der DSL beschrieben werden kann. Die Resultate bezüglich der Evaluation der Genauigkeit weisen Probleme bei der Interaktion der Simulationen mit dem Kopplungsansatz auf. Nichts desto trotz bleibt das Verhalten der monolithischen Simulation in der modularen Version insgesamt erhalten. Die Evaluation zeigt, dass die modulare Simulation eine Erhöhung der Ausführungszeit im Vergleich zur monolithischen Version erfährt. Zudem deutet die Analyse der Skalierbarkeit darauf hin, dass die Ausführungszeit der modularen Simulation nicht exponentiell mit der Anzahl der gekoppelten Simulationen wächst

    Continuous Secure Software Development and Analysis

    Get PDF
    Software security becomes increasingly important nowadays. Security should be considered as early as possible in the software development. However, considering different aspects of security is a complex task. In this paper, we propose an extendable framework for continuous secure software development and evolution. The framework provides interconnected analyses on different stages of development. Explicit assumption management helps to verify the security requirements more properly. Thus, the security of the system under development can be estimated more accurately. Finally, the concrete assumptions also help to identify and close security gaps that arise during the software’s lifetime

    Modeling and Verifying Access Control for Ethereum Smart Contracts

    Get PDF

    Model-driven Quantification of Correctness with Palladio and KeY

    Get PDF
    In this report, we present an approach for the quantification of correctness of service-oriented software systems by combining the modeling tool Palladio and the deductive verification approach KeY. Our approach uses Palladio for modeling the service-oriented architecture, the usage scenarios of the system (called services) in particular, and the distribution of values for the parameters provided by the users. The correctness of a service is modeled as a Boolean condition. We use Palladio to compute the probability of a service being called with critical parameters, i.e., in a way that its correctness condition is violated. The critical parameters are computed by KeY, a deductive verification tool for Java. The approach is not limited to KeY: Other techniques, such as bug finding (testing, bounded model checking) can be used, as well as other verification tools. We present two scenarios, which we use as examples to evaluate the feasibility of the approach. Finally, we close with remarks on the extension to security properties. Furthermore, we discuss a possible approach to guide developers to locations of the code that should be verified or secured

    Modeling and Enforcing Access Control Policies for Smart Contracts

    No full text
    Töberg J-P, Schiffl J, Reiche F, Beckert B, Heinrich R, Reussner R. Modeling and Enforcing Access Control Policies for Smart Contracts. In: 2022 IEEE International Conference on Decentralized Applications and Infrastructures (DAPPS). IEEE; 2022: 38-47.Ethereum smart contracts expose their functions to an untrusted network. Therefore, access control is of utmost importance. Nevertheless, many smart contracts have suffered exploits due to improper design or implementation of access control policies. In this work, we propose an approach for modeling role-based access control policies for Ethereum smart contracts on the architecture level, and we describe a process for ensuring that the implementation is correct w.r.t. that model. We achieve this through a combination of code generation, formal verification and static code analysis. Additionally, we provide an argument for the correctness of our approach and demonstrate its feasibility by detecting manually introduced violations in a case study

    ANTIUTOPIAS - literatura, cinema e crítica social 1895-1990 (Antiutopias - literature, cinema and social criticism, 1895-1990)

    No full text
    corecore